package lesson11;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.PriorityQueue;
import java.util.Stack;

public class DataStructures {

		public static void main(String[] args) {
			
			int[] array = new int[10];
			
			ArrayList dynamicArray = new ArrayList();
			
			dynamicArray.add("Hi");
			dynamicArray.add("Yo");
			dynamicArray.add("Privet");
			dynamicArray.add("Zdravey");
			System.out.println(dynamicArray.size());

			System.out.println("before delete:");
			for(int i = 0; i < dynamicArray.size(); i++)
			{
				String element = (String) dynamicArray.get(i);
				System.out.println(element);
			}

			String removedElement = (String ) dynamicArray.remove(2);
			
			boolean removed = dynamicArray.remove("Zdravey");
			System.out.println(removed);
			System.out.println("after delete:");
			
			for(int i = 0; i < dynamicArray.size(); i++)
			{
				String element = (String) dynamicArray.get(i);
				System.out.println(element);
			}
			
			LinkedList linked = new LinkedList();
			System.out.println("LinkedList example:");
			linked.add(3);
			linked.add(5);
			linked.add(1, 11);
			linked.add(8);
			System.out.println(linked.getFirst());
			System.out.println(linked.get(1));
			System.out.println(linked.getLast());
			
			Object[] linkedArray = linked.toArray();
			
			Stack st = new Stack();
			st.add("Hi1");
			st.add("Hi2");
			st.add("Hi3");
			st.add("Hi4");
			st.add("Hi5");
			System.out.println(st.get(3));
			
			PriorityQueue pq = new PriorityQueue();
			pq.add(3);
			pq.add("lala");
			pq.poll();
			
			
		}
}
